home *** CD-ROM | disk | FTP | other *** search
/ SGI Developer Toolbox 6.1 / SGI Developer Toolbox 6.1 - Disc 4.iso / public / Xpm / pixmap / pixmap.man.ascii < prev    next >
Text File  |  1994-08-01  |  57KB  |  1,182 lines

  1.  
  2.      PIXMAP(1)           X Version 11 (Release 4)            PIXMAP(1)
  3.  
  4.      NAME
  5.           pixmap - pixmap editor for X based on enhanced Xpm library
  6.           from Arnaud Le Hors - GROUPE BULL
  7.  
  8.      SYNOPSIS
  9.           pixmap [-options ...]
  10.  
  11.      DESCRIPTION
  12.           The pixmap program is a tool for creating or editing
  13.           rectangular images made up of colored pixels, i.e., pixmaps.
  14.           Pixmaps are intensively used in X to define window
  15.           backgrounds, icon images, etc.
  16.  
  17.           The pixmap program can have two different interfaces, a
  18.           Athena widgets version and a Motif widgets version.
  19.  
  20.      USAGE
  21.           Pixmap displays grid in which each square represents a
  22.           single pixel in the picture being edited.  Squares can be
  23.           set, cleared, or inverted (this last operation will be
  24.           detailed later) directly with the buttons on the pointer and
  25.           a menu of higher level operations such as draw line and fill
  26.           circle is provided to the side of the grid.  Another menu on
  27.           the top of the window allows files operations (Load, Save,
  28.           ...), edit operations (Cut/Copy/Paste, attributes of pixmap
  29.           editing, ...) and colors operations (drawing color,
  30.           attributes of colors, ...). Pixmap uses a Pixmap widget to
  31.           represent the pixmap image.
  32.  
  33.           Pixmaps are stored as a C string array variable suitable for
  34.           including in applications, using the format defined by
  35.           Arnaud Le Hors in his Xpm library (refer to Xpm manual for
  36.           format description). This format allows pixmaps to be used
  37.           indistinctly on monochrome, grey scale or color displays.
  38.  
  39.      OPTIONS
  40.           Pixmap accepts the following options:
  41.  
  42.           -display/-d display
  43.               This option specifies the name of the X server to use.
  44.  
  45.           -geometry geometry
  46.               This option specifies the placement and size of the
  47.               pixmap program window on the screen.  See X for details.
  48.  
  49.           -help/-h
  50.               This option asks for the usage description of pixmap.
  51.  
  52.           -size WIDTHxHEIGHT
  53.               This option specifies the size (width and height) in
  54.  
  55.      Page 1                                          (printed 8/12/93)
  56.  
  57.      PIXMAP(1)           X Version 11 (Release 4)            PIXMAP(1)
  58.  
  59.               pixels of the pixmap to be edited.
  60.  
  61.           -squares SIZE
  62.               This option specifies the size in display points to use
  63.               to represent each pixel (a square of SIZE points).
  64.  
  65.           +grid/-grid
  66.               This option indicates that the grid lines in the Pixmap
  67.               widget should be displayed or not.
  68.  
  69.           -stippled
  70.               This option turns off stipple drawing of transparent
  71.               pixels.
  72.  
  73.           -stipple pixmap
  74.               This option specifies the depth 1 pixmap to use to draw
  75.               transparent pixels.
  76.  
  77.           +axes/-axes
  78.               This option indicates that the axes in the Pixmap widget
  79.               should be displayed or not.
  80.  
  81.           +proportional/-proportional
  82.               This option indicates that the pixels in the Pixmap
  83.               widget should be drawn proportional, i.e. in squares,
  84.               or not.
  85.  
  86.           -hl color
  87.               This option specifies the color to use for highlighting
  88.               purposes.  color can be any name accepted by the
  89.               XParseColor(3X11) function.
  90.  
  91.           -fr color
  92.               This option specifies the color to use draw grid and
  93.               axes in Pixmap widget.  color can be any name accepted
  94.               by the XParseColor(3X11) function.
  95.  
  96.           -tr color
  97.               This option specifies the color to use to represent
  98.               transparent pixels.  color can be any name accepted by
  99.               the XParseColor(3X11) function.
  100.  
  101.           -fn/-font fontname
  102.               This option specifies the font to be used in pixmap.
  103.  
  104.           -filename/-f/-in filename
  105.               This option specifies the name of the file from which
  106.               the pixmap to be edited should be loaded.
  107.  
  108.      PIXELS EDITING WITH MOUSE
  109.           Pixels may be set, cleared, or inverted by pointing to them
  110.           and clicking one of the buttons indicated below.  Multiple
  111.  
  112.      Page 2                                          (printed 8/12/93)
  113.  
  114.      PIXMAP(1)           X Version 11 (Release 4)            PIXMAP(1)
  115.  
  116.           pixels can be changed at once by holding the button down and
  117.           dragging the cursor across them.  Set pixels are filled with
  118.           the current color; cleared pixels are filled with white; and
  119.           inverted pixels are either set if they were originally
  120.           cleared or cleared otherwise.
  121.  
  122.                Button 1
  123.                    This button (usually leftmost on the pointer) is
  124.                    used to set one or more pixels.
  125.  
  126.                Button 2
  127.                    This button (usually in the middle) is used to
  128.                    invert one or more pixels.
  129.  
  130.                Button 3
  131.                    This button (usually on the right) is used to clear
  132.                    one or more pixels.
  133.  
  134.                Button 4
  135.                    This button is used to clear one or more pixels.
  136.  
  137.                Button 5
  138.                    This button is used to clear one or more pixels.
  139.  
  140.           Every button operation can be changed by means of resources
  141.           in the (/usr/lib/X11/app-defaults/Pixmap).
  142.  
  143.      MENU COMMANDS
  144.           To make defining shapes easier, pixmap provides several
  145.           commands for drawing and manipulating the pixmap edited, and
  146.           commands for file management.
  147.  
  148.           Commands are layed in a vertical bar at the left of the
  149.           Pixmap widget and in a menu bar at the top of the window.
  150.           Most of the drawing commands are located in the left bar,
  151.           where as file management and other general commands are
  152.           located in the top menu bar.
  153.  
  154.           In the left bar, some commands are represented by icons.
  155.           They are, from left to right and up to down, Flip
  156.           horizontally, Up, Flip vertically, Left, Fold, Right, Rotate
  157.           right (counterclock), Down, Rotate left (clockwise).
  158.  
  159.           Some commands are also available directly through the
  160.           keyboard when the mouse cursor is located on the Pixmap
  161.           widget. They will be mentionned as an accelerator in the
  162.           following description.
  163.  
  164.           LEFT BAR COMMANDS
  165.  
  166.                Undo
  167.                    This command is used to undo the last operation.
  168.  
  169.      Page 3                                          (printed 8/12/93)
  170.  
  171.      PIXMAP(1)           X Version 11 (Release 4)            PIXMAP(1)
  172.  
  173.                    Only one operation can be undone.  The accelerator
  174.                    of this command is Any<Key>u.
  175.  
  176.                Clear
  177.                    This command is used to clear all of the pixels in
  178.                    the pixmap as if Button 3 had been dragged through
  179.                    every pixel in the pixmap. The accelerator of this
  180.                    command is [Shift]<Key>c.
  181.  
  182.                Set This command is used to set all of the pixels in
  183.                    the pixmap to the current color, as if Button 1 had
  184.                    been dragged through every pixel in the pixmap. The
  185.                    accelerator of this command is [Shift]<Key>s.
  186.  
  187.                Redraw
  188.                    This command is used to redisplay the pixmap. The
  189.                    accelerator of this command is Ctrl<Key>l.
  190.  
  191.                Copy
  192.                    This command is used to copy a region of the pixmap
  193.                    from one location to another. When this command is
  194.                    invoked, the region to copy should
  195.                     be specified by pressing Button 1, dragging the
  196.                    mouse and releasing Button 1. The region can now be
  197.                    copied by pressing Button 1 with the cursor located
  198.                    on the region selected, dragging the mouse and
  199.                    releasing it where the upper left corner of the
  200.                    region should be copied.  If a region was already
  201.                    selected with a Mark command, only the second phase
  202.                    of the copy is necessary.  The accelerator of this
  203.                    command is available when a region has already been
  204.                    selected and is Ctrl<Btn2Down> to drag the region
  205.                    and Ctrl<Btn2Up> to draw it to point. This
  206.                    accelerated command is identical to the Paste
  207.                    command available through the Edit menu of the top
  208.                    menu bar.
  209.  
  210.                Move
  211.                    This command is used to move a region of the pixmap
  212.                    from one location to another. When this command is
  213.                    invoked, the region to move should be specified by
  214.                    pressing Button 1, dragging the mouse and releasing
  215.                    Button 1. The region can now be moved by pressing
  216.                    Button 1 with the cursor located on the region
  217.                    selected, dragging the mouse and releasing it where
  218.                    the upper left corner of the region should be
  219.                    moved. The initial region is cleared.  If a region
  220.                    was already selected with a Mark command, only the
  221.                    second phase of the move is necessary.
  222.  
  223.                Mark
  224.                    This command is used to mark a region to move or
  225.  
  226.      Page 4                                          (printed 8/12/93)
  227.  
  228.      PIXMAP(1)           X Version 11 (Release 4)            PIXMAP(1)
  229.  
  230.                    copy it later (commands Move and Copy above), or to
  231.                    put it in the Cut&Paste buffer (commands Cut and
  232.                    Copy of the Edit menu of the top menu bar). When
  233.                    this command is invoked, the region should be
  234.                    specified by pressing Button 1, dragging the mouse
  235.                    and releasing Button 1. Once marked, the region is
  236.                    highlighted.  The accelerator of this command is
  237.                    Ctrl<Btn1Down> to initiate the selection and
  238.                    Ctrl<Btn1Up> to finish it.
  239.  
  240.                Unmark
  241.                    This command is used to unmark a region previously
  242.                    marked. It will unhighlight the region.  The
  243.                    accelerator of this command is Ctrl<Btn3Down>.
  244.  
  245.                Flip horizontally
  246.                    This command is used to flip horizontally the whole
  247.                    pixmap or the marked region. This means mirroring
  248.                    horizontally the pixmap image. The mirror is placed
  249.                    at the middle of the pixmap height.  The
  250.                    accelerator of this command is [Shift|Ctrl]<Key>h.
  251.  
  252.                Up  This command is used to move the whole pixmap or
  253.                    the marked region up.  Pixels at the top of the
  254.                    pixmap are pushed back at the bottom of the new
  255.                    pixmap.  The accelerator of this command is
  256.                    Any<Key>Up (not available in Motif version).
  257.  
  258.                Flip vertically
  259.                    This command is used to flip vertically the whole
  260.                    pixmap or the marked region. This means mirroring
  261.                    vertically the pixmap image. The mirror is placed
  262.                    at the middle of the pixmap width.  The accelerator
  263.                    of this command is Any<Key>v.
  264.  
  265.                Left
  266.                    This command is used to move the whole pixmap or
  267.                    the marked region left.  Pixels at the left of the
  268.                    pixmap are pushed back at the right of the new
  269.                    pixmap.  The accelerator of this command is
  270.                    Any<Key>Left (not available in Motif version).
  271.  
  272.                Fold
  273.                    This command is used to "Fold" the pixmap. This
  274.                    means splitting the pixmap image in four squares
  275.                    (top left, top right, bottom left and bottom right)
  276.                    and inverting them (top becomes bottom, left
  277.                    becomes right, and so on).  "Folding" twice a
  278.                    pixmap does no change.  The accelerator of this
  279.                    command is [Shift|Ctrl]<Key>f.
  280.  
  281.                Right
  282.  
  283.      Page 5                                          (printed 8/12/93)
  284.  
  285.      PIXMAP(1)           X Version 11 (Release 4)            PIXMAP(1)
  286.  
  287.                    This command is used to move the whole pixmap or
  288.                    the marked region right. Pixels at the right of the
  289.                    pixmap are pushed back at the left of the new
  290.                    pixmap.  The accelerator of this command is
  291.                    Any<Key>Right (not available in Motif version).
  292.  
  293.                Rotate right
  294.                    This command is used to rotate the pixmap image or
  295.                    the marked region right (clockwise) of 90 degrees.
  296.                    Four Rotate right operations does no change.  The
  297.                    accelerator of this command is [Shift|Ctrl]<Key>r.
  298.  
  299.                Down
  300.                    This command is used to move the whole pixmap or
  301.                    the marked region down. Pixels at the bottom of the
  302.                    pixmap are pushed back at the top of the new
  303.                    pixmap.  The accelerator of this command is
  304.                    Any<Key>Down (not available in Motif version).
  305.  
  306.                Rotate left
  307.                    This command is used to rotate the pixmap image or
  308.                    the marked region left (counterclock) of 90
  309.                    degrees. Four Rotate left operations does no
  310.                    change.  The accelerator of this command is
  311.                    [Shift]<Key>l.
  312.  
  313.                Point
  314.                    This command is used to set, invert or clear a
  315.                    pixel to the current color.  It can be considered
  316.                    as a mode. After selecting it, pixels are set,
  317.                    inverted or cleared depending on the button used
  318.                    (see Pixels Editing with the Mouse). If the mouse
  319.                    button remains pressed while dragging the mouse,
  320.                    more than one pixel can be affected.  This command
  321.                    has no accelerator.
  322.  
  323.                Curve
  324.                    This command is used to draw curved lines (set,
  325.                    cleared or inverted).  The curve is drawn while
  326.                    dragging the mouse. This command can be considered
  327.                    as a mode. Quite the same affect can be obtained by
  328.                    dragging the mouse in point mode, the main
  329.                    difference resides in the fact that pixels will be
  330.                    drawn contiguously.  This command has no
  331.                    accelerator.
  332.  
  333.                Line
  334.                    This command is used to draw lines between two
  335.                    points (set, cleared or inverted). The lines are
  336.                    first drawn highlighted while mouse button remains
  337.                    pressed. This command can be considered as a mode.
  338.                    This command has no accelerator.
  339.  
  340.      Page 6                                          (printed 8/12/93)
  341.  
  342.      PIXMAP(1)           X Version 11 (Release 4)            PIXMAP(1)
  343.  
  344.                Rectangle
  345.                    This command is used to draw rectangles between two
  346.                    points defining the two opposite corners of the
  347.                    rectangle (set, cleared or inverted).  The
  348.                    rectangles are first drawn highlighted while mouse
  349.                    button remains pressed. This command can be
  350.                    considered as a mode.  This command has no
  351.                    accelerator.
  352.  
  353.                Filled Rectangle
  354.                    This command is used to draw filled rectangles
  355.                    between two points defining the two opposite
  356.                    corners of the rectangle (set, cleared or
  357.                    inverted).  The rectangles outlines are first drawn
  358.                    highlighted while mouse button remains pressed.
  359.                    This command can be considered as a mode.  This
  360.                    command has no accelerator.
  361.  
  362.                Circle
  363.                    This command will set, invert or clear the pixels
  364.                    on a circle specified by a center and a point on
  365.                    the curve. Small circles may not look very round
  366.                    because of the size of the pixmap and the limits of
  367.                    having to work with discrete pixels. This command
  368.                    can be considered as a mode.  This command has no
  369.                    accelerator.
  370.  
  371.                Filled Circle
  372.                    This command will set, invert or clear all of the
  373.                    pixels in a circle specified by a center and a
  374.                    point on the curve. All pixels side and including
  375.                    the circle are set. This command can be considered
  376.                    as a mode.  This command has no accelerator.
  377.  
  378.                Flood Fill
  379.                    This command will set all clear pixels in an
  380.                    enclosed shape. The enclosed shape is determined by
  381.                    all the pixels whose color is different from the
  382.                    color of the pixel on which the user has clicked.
  383.                    If the shape is not closed, the entire pixmap will
  384.                    be filled. This command can be considered as a
  385.                    mode.  This command has no accelerator.
  386.  
  387.                Set Hot Spot
  388.                    This command allows the specification of a Hot
  389.                    Spot. The Hot Spot is selected by clicking the Set
  390.                    mouse button. Clicking Invert will invert the Hot
  391.                    Spot, set or reset it depending on its previous
  392.                    state. Hot spot is useful for cursor pixmaps and
  393.                    are used to reference the sensible part of the
  394.                    pixmap.  This command has no accelerator.
  395.  
  396.      Page 7                                          (printed 8/12/93)
  397.  
  398.      PIXMAP(1)           X Version 11 (Release 4)            PIXMAP(1)
  399.  
  400.                Clear Hot Spot
  401.                    This command clears the current Hot Spot.  This
  402.                    command has no accelerator.
  403.  
  404.                Set Port
  405.                    This command allows to create a Port extension line
  406.                    graphically. It is part of the customized Port
  407.                    extension editor developped by Tim Wise (SES Inc.).
  408.                    The Port is set on the pixmap image by clicking any
  409.                    of the mouse button.  This command has no
  410.                    acelerator.
  411.  
  412.                Clear Port
  413.                    This command allows to remove a Port extension line
  414.                    graphically. It is part of the customized Port
  415.                    extension editor developped by Tim Wise (SES Inc.).
  416.                    The Port onto which any mouse button was clicked is
  417.                    cancelled.  This command has no accelerator.
  418.  
  419.                Move Port
  420.                    This command allows to move a Port, that is to
  421.                    change the coordinates specified in the Port
  422.                    extension line. It is part of the customized Port
  423.                    extension editor developped by Tim Wise (SES Inc.).
  424.                    The Port onto which any mouse button was pressed is
  425.                    moved with the mouse cursor until the mouse button
  426.                    is released.  This command has no accelerator.
  427.  
  428.                Port Info...
  429.                    This command allows to edit the information
  430.                    associated to a Port, that is contained in a Port
  431.                    extension line. It is part of the customized Port
  432.                    extension editor developped by Tim Wise (SES Inc.).
  433.                    The information associated with the Port onto which
  434.                    any mouse button was clicked is displayed in a
  435.                    dialog window. It can be edited in that dialog and
  436.                    saved by clicking the "Okay" button of the dialog.
  437.                    This command has no accelerator.
  438.  
  439.           TOP MENU COMMANDS
  440.  
  441.                Info
  442.                    This command pops up an info window.
  443.  
  444.           File MENU
  445.  
  446.                Load...
  447.                    This command is used to load a pixmap file in the
  448.                    pixmap editor. A dialog window is poped up in which
  449.                    a filename has to be provided. The operation can be
  450.                    interrupted with the Cancel button of the dialog
  451.                    window.  The accelerator of this command is
  452.  
  453.      Page 8                                          (printed 8/12/93)
  454.  
  455.      PIXMAP(1)           X Version 11 (Release 4)            PIXMAP(1)
  456.  
  457.                    Alt<Key>l.
  458.  
  459.                Insert...
  460.                    This command is used to load a pixmap in the
  461.                    Cut&Paste buffer of the pixmap editor. The contents
  462.                    of the pixmap file can then be pasted on the
  463.                    current pixmap. A dialog window is poped up in
  464.                    which a filename has to be provided. The operation
  465.                    can be interrupted with the Cancel button of the
  466.                    dialog window.  The accelerator of this command is
  467.                    Alt<Key>i.
  468.  
  469.                Save
  470.                    This command is used to save the current pixmap in
  471.                    the current file edited. By default, and until
  472.                    otherwise changed by a Filename..., Load... or Save
  473.                    As... operation, or by specifying the filename on
  474.                    the command line, the filename is scratch. The
  475.                    Filename... command can be used to change this
  476.                    default filename.  The accelerator of this command
  477.                    is Alt<Key>s.
  478.  
  479.                Save As...
  480.                    This command is used to save the current pixmap in
  481.                    a particular file which name has to be provided in
  482.                    the dialog window which pops up. The operation can
  483.                    be interrupted with the Cancel button of the dialog
  484.                    window.  The accelerator of this command is
  485.                    Alt<Key>a.
  486.  
  487.                Resize...
  488.                    This command is used to resize the current pixmap
  489.                    to the width and height specified in the dialog
  490.                    window which pops up. The syntax is WIDTHxHEIGHT.
  491.                    This operation is different from the Rescale...
  492.                    one in the way that it just add or remove pixels to
  493.                    the current pixmap without trying to fit the space
  494.                    correctly with the pixmap image. The operation can
  495.                    be interrupted with the Cancel button of the dialog
  496.                    window.  The accelerator of this command is
  497.                    Alt<Key>r.
  498.  
  499.                Rescale...
  500.                    This command is used to rescale the current pixmap
  501.                    image in order to make it fit a larger or smaller
  502.                    space. The new width and height have to be
  503.                    specified in the dialog window which pops up with
  504.                    the syntax WIDTHxHEIGHT. The operation can be
  505.                    interrupted with the Cancel button of the dialog
  506.                    window.  The accelerator of this command is
  507.                    Alt<Key>e.
  508.  
  509.      Page 9                                          (printed 8/12/93)
  510.  
  511.      PIXMAP(1)           X Version 11 (Release 4)            PIXMAP(1)
  512.  
  513.                Filename...
  514.                    This command is used to change the current
  515.                    filename, i.e., the name of the file in which the
  516.                    pixmap will be saved with a Save operation.  The
  517.                    new filename has to be provided in the dialog
  518.                    window which pops up. The operation can be
  519.                    interrupted with the Cancel button of the dialog
  520.                    window.  The accelerator of this command is
  521.                    Alt<Key>f.
  522.  
  523.                Hints comment...
  524.                    This command pops up a dialog window in which the
  525.                    user can specify the hints section comment of the
  526.                    pixmap file. The operation can be interrupted with
  527.                    the Cancel button of the dialog window.  The
  528.                    accelerator of this command is Alt<Key>h.
  529.  
  530.                Colors comment...
  531.                    This command pops up a dialog window in which the
  532.                    user can specify the colors section comment of the
  533.                    pixmap file. The operation can be interrupted with
  534.                    the Cancel button of the dialog window.  The
  535.                    accelerator of this command is Alt<Key>c.
  536.  
  537.                Pixels comment...
  538.                    This command pops up a dialog window in which the
  539.                    user can specify the pixels section comment of the
  540.                    pixmap file. The operation can be interrupted with
  541.                    the Cancel button of the dialog window.  The
  542.                    accelerator of this command is Alt<Key>p.
  543.  
  544.                Quit
  545.                    This command causes pixmap to display a dialog box
  546.                    asking whether or not it should save the pixmap (if
  547.                    it has changed) and then exit.  Answering yes is
  548.                    the same as invoking Save; no causes pixmap to
  549.                    simply exit; and cancel will abort the Quit command
  550.                    so that more changes may be made.  The accelerator
  551.                    of this command is Alt<Key>q.
  552.  
  553.           Edit MENU
  554.  
  555.                Image
  556.                    This command pops up a window in which the real
  557.                    size pixmap is shown.  This window can be closed by
  558.                    clicking the mouse in it or by invoking Image once
  559.                    again. When the window is poped up, an X mark is
  560.                    displayed in the menu at the left of the Image
  561.                    label.  The accelerator of this command is <Key>i.
  562.  
  563.                Grid
  564.                    This command toggles the display of the grid. When
  565.  
  566.      Page 10                                         (printed 8/12/93)
  567.  
  568.      PIXMAP(1)           X Version 11 (Release 4)            PIXMAP(1)
  569.  
  570.                    the grid is displayed, an X mark is added at the
  571.                    left of the Grid label.  The accelerator of this
  572.                    command is <Key>g.
  573.  
  574.                Axes
  575.                    This command toggles the display of axes. When axes
  576.                    are displayed, an X mark is added at the left of
  577.                    the Axes label.  The accelerator of this command is
  578.                    <Key>a.
  579.  
  580.                Proportional
  581.                    This command toggles the display in proportional
  582.                    mode of the pixmap.  Proportional mode means that
  583.                    the Pixmap widget won't try to fit all the
  584.                    available space within the interface and will
  585.                    rather display each pixel in a square, probably
  586.                    leaving some space around the pixmap widget. When
  587.                    the proportional mode is active, an X mark is added
  588.                    at the left of the Proportional label.  The
  589.                    accelerator of this command is <Key>p.
  590.  
  591.                Zoom
  592.                    This command is used to zoom some pixels of the
  593.                    current pixmap. The zooming region has to be
  594.                    selected by the use as a rectangle region just as
  595.                    if he was marking a region (see Mark command). The
  596.                    operation can be interrupted by invoking any other
  597.                    command. When a region is zoomed, an X mark is
  598.                    added at the left of the Zoom label. Invoking once
  599.                    again the Zoom command zooms out.  The accelerator
  600.                    of this command is <Key>z.
  601.  
  602.                Zoom In
  603.                    This command is used to incrementaly zoom into the
  604.                    current pixmap.  This side effect of this is to
  605.                    enlarge the size of a square used to represent a
  606.                    single pixel.  The accelerator of this command is
  607.                    <Key>x.
  608.  
  609.                Zoom Out
  610.                    This command is used to incrementaly zoom out of
  611.                    the current pixmap.  This side effect of this is to
  612.                    reduce the size of a square used to represent a
  613.                    single pixel.  The accelerator of this command is
  614.                    <Key>y.
  615.  
  616.                Zooming Factor
  617.                    The command pops up a dialog window in which the
  618.                    user can edit the current zooming factor.  The
  619.                    zooming factor is the size of a square used to
  620.                    represent a single pixel.  Enlarging the zooming
  621.                    factor will zoom into the current pixmap, while
  622.  
  623.      Page 11                                         (printed 8/12/93)
  624.  
  625.      PIXMAP(1)           X Version 11 (Release 4)            PIXMAP(1)
  626.  
  627.                    reducing it will zoom out of the pixmap.  The
  628.                    accelerator of this command is <Key>f.
  629.  
  630.                Cut When a region is marked, this operation is active.
  631.                    It is used to cut the contents of the region to put
  632.                    it in the Cut&Paste buffer. The Paste command now
  633.                    becomes active and the marked region is unmarked.
  634.                    The pixels in the marked region are cleared. This
  635.                    command acts as the Move one when a region is
  636.                    already marked.  The accelerator of this command is
  637.                    Ctrl<Key>c.
  638.  
  639.                Copy
  640.                    When a region is marked, this operation is active.
  641.                    It is used to copy the contents of the region in
  642.                    the Cut&Paste buffer. The Paste command now becomes
  643.                    active and the marked region is unmarked. This
  644.                    command acts as the Copy command of the left border
  645.                    when a region is already marked.  The accelerator
  646.                    of this command is Ctrl<Key>x.
  647.  
  648.                Paste
  649.                    When a region has been cut or copied in the
  650.                    Cut&Paste buffer, this command is active and can be
  651.                    used to paste the contents of the Cut&Paste buffer
  652.                    where the mouse button is clicked. The paste
  653.                    operation takes care of the button used to specify
  654.                    the point where to paste the buffer. The button can
  655.                    remain pressed to move the buffer around and then
  656.                    be released to paste the buffer at the current
  657.                    location.  A Copy and Paste operation can be
  658.                    accelerated by Ctrl<Btn2Down> to intiate the
  659.                    operation and Ctrl<Btn2Up> to finish the operation,
  660.                    i.e., paste the buffer.  The accelerator of this
  661.                    command is Ctrl<Key>p.
  662.  
  663.                Crop
  664.                    When a region is marked, or a file has been
  665.                    inserted in the Cut&Paste buffer, this command will
  666.                    exchange the current pixmap with the marked region,
  667.                    or the Cut&Paste buffer. Cropping twice does
  668.                    nothing.  The accelerator of this command is
  669.                    Ctrl<Key>o.
  670.  
  671.           Foreground Color MENU
  672.  
  673.                Add color...
  674.                    This command is used to add a new color in the
  675.                    Color Panel (see below). The color name is
  676.                    specified in the dialog window which pops up either
  677.                    by a real color name found in rgb.txt file or by a
  678.                    string like #rrggbb where rr, gg and bb represent
  679.  
  680.      Page 12                                         (printed 8/12/93)
  681.  
  682.      PIXMAP(1)           X Version 11 (Release 4)            PIXMAP(1)
  683.  
  684.                    the red, green and blue components of the color in
  685.                    hexadecimal format. The operation can be
  686.                    interrupted with the Cancel button of the dialog
  687.                    window.  The accelerator of this command is
  688.                    Ctrl<Key>a.
  689.  
  690.                Symbolic name...
  691.                    This command is used to set the symbolic name of
  692.                    the current color.  The symbolic name is entered in
  693.                    the dialog window which pops up. The operation can
  694.                    be interrupted with the Cancel button of the dialog
  695.                    window.  The accelerator of this command is
  696.                    Ctrl<Key>s.
  697.  
  698.                Monochrome name...
  699.                    This command is used to set the monochrome name of
  700.                    the current color, i.e., the name of the color to
  701.                    use on monochrome displays. The monochrome name is
  702.                    entered in the dialog window which pops up. The
  703.                    operation can be interrupted with the Cancel button
  704.                    of the dialog window.  The accelerator of this
  705.                    command is Ctrl<Key>m.
  706.  
  707.                Grey scale 4 name...
  708.                    This command is used to set the grey scale 4 name
  709.                    of the current color, i.e., the name of the color
  710.                    to use on grey scale 4 displays.  The grey scale 4
  711.                    name is entered in the dialog window which pops up.
  712.                    The operation can be interrupted with the Cancel
  713.                    button of the dialog window.  The accelerator of
  714.                    this command is Ctrl<Key>4.
  715.  
  716.                Grey scale name...
  717.                    This command is used to set the grey scale name of
  718.                    the current color, i.e., the name of the color to
  719.                    use on grey scale (with more then 4 levels)
  720.                    displays.  The grey scale name is entered in the
  721.                    dialog window which pops up. The operation can be
  722.                    interrupted with the Cancel button of the dialog
  723.                    window.  The accelerator of this command is
  724.                    Ctrl<Key>g.
  725.  
  726.                Color name...
  727.                    This command is used to set the color name of the
  728.                    current color. This change will be considered when
  729.                    saving the pixmap but to remain visible, it affects
  730.                    the label of the menu item of the color. This is
  731.                    useful to directly change a specific color for
  732.                    another one or to allow multiple symbols to
  733.                    represent the same color (the color can be the same
  734.                    on color display but change on grey scale or
  735.                    monochrome ones).  The color name is entered in the
  736.  
  737.      Page 13                                         (printed 8/12/93)
  738.  
  739.      PIXMAP(1)           X Version 11 (Release 4)            PIXMAP(1)
  740.  
  741.                    dialog window which pops up. The operation can be
  742.                    interrupted with the Cancel button of the dialog
  743.                    window. The None (not case sensitive) name is used
  744.                    to change the pixel representing the transparent
  745.                    color.  The accelerator of this command is
  746.                    Ctrl<Key>n.
  747.  
  748.           Xpm Extensions MENU
  749.  
  750.                Add Extension...
  751.                    This command pops up a dialog window into which the
  752.                    user provides a name for an extension to be added
  753.                    in the current pixmap extensions list. The
  754.                    operation can be interrupted with the Cancel button
  755.                    of the dialog window. If the user confirms with the
  756.                    Okay button, another dialog windows pops up where
  757.                    the user can edit the extension contents. When the
  758.                    user clicks on the Cancel button into this
  759.                    extension editing window, the edit operation is
  760.                    interrupted but the extension is added to the
  761.                    extensions list of the current pixmap. If the user
  762.                    wishes to abort the Add Extension... operation,
  763.                    he/she needs to click on the Remove button. The
  764.                    edition can otherwise be confirmed by clicking on
  765.                    the Okay button.
  766.  
  767.                Any extension name
  768.                    WHen an extension is added in the extensions list
  769.                    of the current pixmap, its name appears in the Xpm
  770.                    Extensions menu. When selected in the menu, the
  771.                    extension edition window pops up. See above for its
  772.                    description.
  773.  
  774.           In addition the Motif version defines the status label as
  775.           two active buttons which operate as Filename... and
  776.           Resize... commands.
  777.  
  778.      COLOR PANEL
  779.           Colors in pixmap are presented in the Color Panel. Each
  780.           loaded color is associated a square button, filled with the
  781.           color pixel.  Scrollbars around the panel allow to scan the
  782.           whole panel. To choose a color for drawing, the user must
  783.           click on a color button. At this time, the current name of
  784.           the color is displayed as the title of the Foreground Color
  785.           menu. A color can also be selected by using Shift<BtnDown>
  786.           on a pixel of the current pixmap which color should be used.
  787.           This accelerator is very useful when modifying small parts
  788.           of a pixmap locally.
  789.  
  790.      FILE FORMAT
  791.           The Save or Save As... commands store pixmaps using the
  792.           format defined by Arnaud Le Hors in his Xpm library. Each
  793.  
  794.      Page 14                                         (printed 8/12/93)
  795.  
  796.      PIXMAP(1)           X Version 11 (Release 4)            PIXMAP(1)
  797.  
  798.           pixmap is a C string array variable that can be included and
  799.           used within programs, or referred to by X Toolkit pixmap
  800.           resources (assuming that a String to Pixmap converter has
  801.           been registered on the server). Here is an example of a
  802.           pixmap file:
  803.  
  804.                         /* XPM */
  805.                         static char * plaid[] = {
  806.                         /* plaid pixmap
  807.                          * width height ncolors chars_per_pixel */
  808.                         "22 22 4 2 ",
  809.                         /* colors
  810.                          */
  811.                         "   c red         m white  s light_color ",
  812.                         "Y  c yellow      m black  s lines_in_mix ",
  813.                         "+  c yellow      m white  s lines_in_dark ",
  814.                         "x                m black  s dark_color ",
  815.                         /* pixels */
  816.                         "x   x   x x x   x   x x x x x x + x x x x x ",
  817.                         "  x   x   x   x   x   x x x x x x x x x x x ",
  818.                         "x   x   x x x   x   x x x x x x + x x x x x ",
  819.                         "  x   x   x   x   x   x x x x x x x x x x x ",
  820.                         "x   x   x x x   x   x x x x x x + x x x x x ",
  821.                         "Y Y Y Y Y x Y Y Y Y Y + x + x + x + x + x + ",
  822.                         "x   x   x x x   x   x x x x x x + x x x x x ",
  823.                         "  x   x   x   x   x   x x x x x x x x x x x ",
  824.                         "x   x   x x x   x   x x x x x x + x x x x x ",
  825.                         "  x   x   x   x   x   x x x x x x x x x x x ",
  826.                         "x   x   x x x   x   x x x x x x + x x x x x ",
  827.                         "          x           x   x   x Y x   x   x ",
  828.                         "          x             x   x   Y   x   x   ",
  829.                         "          x           x   x   x Y x   x   x ",
  830.                         "          x             x   x   Y   x   x   ",
  831.                         "          x           x   x   x Y x   x   x ",
  832.                         "x x x x x x x x x x x x x x x x x x x x x x ",
  833.                         "          x           x   x   x Y x   x   x ",
  834.                         "          x             x   x   Y   x   x   ",
  835.                         "          x           x   x   x Y x   x   x ",
  836.                         "          x             x   x   Y   x   x   ",
  837.                         "          x           x   x   x Y x   x   x "
  838.                         } ;
  839.  
  840.           The plaid name used to reference the pixmap variable is
  841.           constructed from the name of the file in which is saved the
  842.           pixmap.  Any directories are stripped off the front of the
  843.           name and any suffix beginning with a period is stripped off
  844.           the end.
  845.  
  846.           The pixmap variable is a string array in which the first
  847.           string of the array contains the width, height, number of
  848.           colors and number of characters per pixel.
  849.  
  850.      Page 15                                         (printed 8/12/93)
  851.  
  852.      PIXMAP(1)           X Version 11 (Release 4)            PIXMAP(1)
  853.  
  854.           The following strings represent the color descriptions, one
  855.           string per color. A color description can be composed of one
  856.           or more characters that represent a pixel, and color display
  857.           name preceded by the `c' character, and/or a symbolic name
  858.           preceded by the `s' character, and/or a monochrome display
  859.           name preceded by the `m' character, and or a grey scale 4
  860.           levels display name preceded by the string `g4' , and/or a
  861.           grey scale display name preceded by the aharacter `g',
  862.           specified in any order.
  863.  
  864.           Following color description strings, each string represent a
  865.           line of the pixmap, composed of symbolic characters assigned
  866.           to colors.
  867.  
  868.      USING PIXMAPS IN PROGRAMS
  869.           The format of pixmap files is designed to make pixmaps easy
  870.           to use within X programs, whatever your display is.  The
  871.           following code could be used to create a pixmap to use as a
  872.           window background, using the enhanced Xpm library from
  873.           Groupe Bull and assuming that the pixmap was stored in a
  874.           file name plaid.xpm:
  875.  
  876.                   #include "plaid.xpm"
  877.  
  878.                   Pixmap pixmap;
  879.  
  880.                   XpmCreatePixmapFromData (display, drawable, plaid, &pixmap,
  881.                                &pixmap_mask, &attributes);
  882.  
  883.           Additional routines are available for reading in pixmap
  884.           files and returning the data in the file in Pixmaps.
  885.  
  886.      WIDGET HIERARCHY
  887.           The hierarchy of the pixmap editor is discribed here in
  888.           order to configure the editor by means of X resources in a
  889.           .Xdefaults file.  The first widget class is the Athena
  890.           version one, while the second one, seperated by a |
  891.           character, is the Motif version one.
  892.  
  893.           Pixmap                                            pixmap
  894.                Paned|RowColumn                              parent
  895.                     Form|RowColumn                          formy
  896.                          Command|CascadeButtonGadget        infoButton
  897.                          MenuButton|CascadeButtonGadget     fileButton
  898.                          SimpleMenu|RowColumn               fileMenu
  899.                               SmeBSB|PushButtonGadget       load
  900.                               SmeBSB|PushButtonGadget       insert
  901.                               SmeBSB|PushButtonGadget       save
  902.                               SmeBSB|PushButtonGadget       saveAs
  903.                               SmeLine|SeparatorGadget       line
  904.                               SmeBSB|PushButtonGadget       resize
  905.  
  906.      Page 16                                         (printed 8/12/93)
  907.  
  908.      PIXMAP(1)           X Version 11 (Release 4)            PIXMAP(1)
  909.  
  910.                               SmeBSB|PushButtonGadget       rescale
  911.                               SmeBSB|PushButtonGadget       filename
  912.                               SmeBSB|PushButtonGadget       hintsCmt
  913.                               SmeBSB|PushButtonGadget       colorsCmt
  914.                               SmeBSB|PushButtonGadget       pixelsCmt
  915.                               SmeLine|SeparatorGadget       line
  916.                               SmeBSB|PushButtonGadget       quit
  917.                          MenuButton|CascadeButtonGadget     editButton
  918.                          SimpleMenu|RowColumn               editMenu
  919.                               SmeBSB|ToggleButtonGadget     image
  920.                               SmeLine|SeparatorGadget       line
  921.                               SmeBSB|ToggleButtonGadget     grid
  922.                               SmeBSB|ToggleButtonGadget     axes
  923.                               SmeBSB|ToggleButtonGadget     proportional
  924.                               SmeBSB|ToggleButtonGadget     zoom
  925.                               SmeBSB|PushButtonGadget       zoomIn
  926.                               SmeBSB|PushButtonGadget       zoomOut
  927.                               SmeBSB|PushButtonGadget       zoomFactor
  928.                               SmeLine|SeparatorGadget       line
  929.                               SmeBSB|PushButtonGadget       cut
  930.                               SmeBSB|PushButtonGadget       copy
  931.                               SmeBSB|PushButtonGadget       paste
  932.                               SmeBSB|PushButtonGadget       crop
  933.                          MenuButton|CascadeButtonGadget     fgButton
  934.                          SimpleMenu|RowColumn               fgMenu
  935.                               SmeBSB|PushButtonGadget       addColor
  936.                               SmeBSB|PushButtonGadget       symbolicName
  937.                               SmeBSB|PushButtonGadget       monochromeName
  938.                               SmeBSB|PushButtonGadget       g4Name
  939.                               SmeBSB|PushButtonGadget       gName
  940.                          MenuButton|CascadeButtonGadget     extensionButton
  941.                          SimpleMenu|RowColumn               extensionMenu
  942.                               SmeBSB|PushButtonGadget       addExtension
  943.                               SmeBSB|PushButtonGadget       <extension_name>
  944.                               .
  945.                               .
  946.                               .
  947.                          Label|CascadeButtonGadget          status
  948.                          |CascadeButtonGadget               statusb
  949.                     Paned|Form                              pane
  950.                          Form|RowColumn                     form
  951.                               Command|PushButtonGadget      undo
  952.                               Command|PushButtonGadget      clear
  953.                               Command|PushButtonGadget      set
  954.                               Command|PushButtonGadget      redraw
  955.                               Toggle|ToggleButtonGadget     copy
  956.                               Toggle|ToggleButtonGadget     move
  957.                               Toggle|ToggleButtonGadget     mark
  958.                               Command|PushButtonGadget      unmark
  959.                               |RowColumn                    formh
  960.                                    Command|PushButtonGadget flipHoriz
  961.                                    Command|PushButtonGadget up
  962.  
  963.      Page 17                                         (printed 8/12/93)
  964.  
  965.      PIXMAP(1)           X Version 11 (Release 4)            PIXMAP(1)
  966.  
  967.                                    Command|PushButtonGadget flipVert
  968.                               |RowColumn                    formh
  969.                                    Command|PushButtonGadget left
  970.                                    Command|PushButtonGadget fold
  971.                                    Command|PushButtonGadget right
  972.                               |RowColumn                    formh
  973.                                    Command|PushButtonGadget rotateLeft
  974.                                    Command|PushButtonGadget down
  975.                                    Command|PushButtonGadget rotateRight
  976.                               Toggle|ToggleButtonGadget     point
  977.                               Toggle|ToggleButtonGadget     line
  978.                               Toggle|ToggleButtonGadget     rectangle
  979.                               Toggle|ToggleButtonGadget     filledRectangle
  980.                               Toggle|ToggleButtonGadget     circle
  981.                               Toggle|ToggleButtonGadget     filledCircle
  982.                               Toggle|ToggleButtonGadget     floodFill
  983.                               Toggle|ToggleButtonGadget     setHotSpot
  984.                               Command|PushButtonGadget      clearHotSpot
  985.                               Toggle|ToggleButtonGadget     setPort
  986.                               Toggle|ToggleButtonGadget     clearPort
  987.                               Toggle|ToggleButtonGadget     movePort
  988.                               Toggle|ToggleButtonGadget     portInfo
  989.                          Paned|PanedWindow                  vPane
  990.                               ViewPort|ScrolledWindow       colorView
  991.                                    Box|RowColumn            colorPane
  992.                                         Command|PushButton  <color_name>
  993.                                         .
  994.                                         .
  995.                                         .
  996.                               ViewPort|ScrolledWindow       pixmapView
  997.                                    Pixmap|Pixmap            pixmap
  998.                TransientShell|TransientShell                image
  999.                     Label|Label                             label
  1000.                PopupShell|SelectionBox                      info
  1001.                     Dialog|                                 dialog
  1002.                          Label|                             label
  1003.                          Text|                              value
  1004.                          Command|                           Okay
  1005.                PopupShell|SelectionBox                      input
  1006.                     Dialog|                                 dialog
  1007.                          Label|                             label
  1008.                          Text|                              value
  1009.                          Command|                           Okay
  1010.                          Command|                           Cancel
  1011.                PopupShell|SelectionBox                      file
  1012.                     Dialog|                                 dialog
  1013.                          Label|                             label
  1014.                          Text|                              value
  1015.                          Command|                           Okay
  1016.                          Command|                           Cancel
  1017.                PopupShell|SelectionBox                      error
  1018.                     Dialog|                                 dialog
  1019.  
  1020.      Page 18                                         (printed 8/12/93)
  1021.  
  1022.      PIXMAP(1)           X Version 11 (Release 4)            PIXMAP(1)
  1023.  
  1024.                          Label|                             label
  1025.                          Command|                           Abort
  1026.                          Command|                           Retry
  1027.                PopupShell|SelectionBox                      qsave
  1028.                     Dialog|                                 dialog
  1029.                          Label|                             label
  1030.                          Text|                              value
  1031.                          Command|                           Yes
  1032.                          Command|                           No
  1033.                          Command|                           Cancel
  1034.                PopupShell|PopupShell                        extEditorShell|extEditor_popup
  1035.                     Form|Form                               extEditor
  1036.                          Label|Label                        name
  1037.                          AsciiText|ScrolledText             text
  1038.                          Command|PushButtonGadget           ok
  1039.                          Command|PushButtonGadget           cancel
  1040.                          Command|PushButtonGadget           remove
  1041.  
  1042.           Lines where only appears one or the other type of a widget
  1043.           (like Dialog| or |CascadeButtonGadget) mean that the widget
  1044.           doesn't exist in one or the other version. In the case of
  1045.           dialogs in the Motif version, the widgets are created by
  1046.           means of convenient routines which assign the name of the
  1047.           widget depending on the name of the dialog. By the way, we
  1048.           can't provide with a list of types and names for the
  1049.           substructure of dialog widgets in the Motif version.
  1050.           However, these shouldn't be often modified.
  1051.  
  1052.      X DEFAULTS
  1053.           In addition to the standard Athena or Motif widgets
  1054.           resources, pixmap uses the following resources for the
  1055.           Pixmap widget (named pixmap):
  1056.  
  1057.           Cursor
  1058.               The cursor to use within the Pixmap widget.
  1059.  
  1060.           Foreground
  1061.               The initial foreground color for drawing.
  1062.  
  1063.           Highlight
  1064.               The highlighting color.
  1065.  
  1066.           Framing
  1067.               The framing color, used to draw grid and axes.
  1068.  
  1069.           Transparent
  1070.               The color representing transparent pixels.
  1071.  
  1072.           Proportional
  1073.               Toggles initial proportional display mode.
  1074.  
  1075.           Grid
  1076.  
  1077.      Page 19                                         (printed 8/12/93)
  1078.  
  1079.      PIXMAP(1)           X Version 11 (Release 4)            PIXMAP(1)
  1080.  
  1081.               Toggles initial grid display.
  1082.  
  1083.           GridTolerance
  1084.               Determines when to display grid according to SquareSize.
  1085.  
  1086.           Stippled
  1087.               Suppress stipple drawing of transparent pixels.
  1088.  
  1089.           Stipple
  1090.               Depth 1 pixmap to use to draw transparent pixels
  1091.               stippled.
  1092.  
  1093.           Axes
  1094.               Toggles axes display.
  1095.  
  1096.           Resize
  1097.               Toggles Pixmap widget resize when requesting by window
  1098.               manager.
  1099.  
  1100.           Distance
  1101.               The margin around Pixmap widget.
  1102.  
  1103.           SquareSize
  1104.               The size in screen points used to display each pixmap
  1105.               pixels.
  1106.  
  1107.           PixmapWidth
  1108.               The initial width of the pixmap.
  1109.  
  1110.           PixmapHeight
  1111.               The initial height of the pixmap.
  1112.  
  1113.           Button1Action
  1114.               The action associated to mouse button 1 (between Set,
  1115.               Invert and Clear).
  1116.  
  1117.           Button2Action
  1118.               The action associated to mouse button 2 (between Set,
  1119.               Invert and Clear).
  1120.  
  1121.           Button3Action
  1122.               The action associated to mouse button 3 (between Set,
  1123.               Invert and Clear).
  1124.  
  1125.           Button4Action
  1126.               The action associated to mouse button 4 (between Set,
  1127.               Invert and Clear).
  1128.  
  1129.           Button5Action
  1130.               The action associated to mouse button 5 (between Set,
  1131.               Invert and Clear).
  1132.  
  1133.      Page 20                                         (printed 8/12/93)
  1134.  
  1135.      PIXMAP(1)           X Version 11 (Release 4)            PIXMAP(1)
  1136.  
  1137.           Filename
  1138.               The initial file to load.
  1139.  
  1140.           AddColorNtfyProc
  1141.               The procedure to call when reading a pixmap file to
  1142.               notify color loading. It is strongly advised not to
  1143.               change this resource.
  1144.  
  1145.           ExtensionNtfyProc
  1146.               The procedure to call when reading a pixmap file to
  1147.               notify extension loading. It is strongly advised not to
  1148.               change this resource.
  1149.  
  1150.      SEE ALSO
  1151.           X(1), Xpm library manual,  Xlib - C Language X Interface
  1152.           (particularly the section on Manipulating Pixmaps)
  1153.  
  1154.      BUGS
  1155.           If you move the pointer too fast while holding a pointer
  1156.           button down, some pixels may be missed.  This is caused by
  1157.           limitations in how frequently the X server can sample the
  1158.           pointer location.
  1159.  
  1160.           Loading a pixmap file where the same color is used more than
  1161.           once with different symbols and descriptions, and wrinting
  1162.           it will loose information concerning the color used more
  1163.           than once. The pixmap file plaid given as an example in this
  1164.           man won't be saved that way by pixmap.
  1165.  
  1166.           Accelerators to menu operations don't seem to work with
  1167.           Athena version.
  1168.  
  1169.           In the Motif version, the Filename... and Resize...
  1170.           commands open their respective dialog window in a strange
  1171.           mode. The user has to voluntary (;-) give the focus to the
  1172.           text widget inside to be able to change its content.
  1173.  
  1174.      COPYRIGHT
  1175.           Copyright 1991, Lionel Mallet.
  1176.  
  1177.      AUTHOR
  1178.           pixmap by Lionel Mallet - Simulog. Extension edition and
  1179.           customized Port editor by Tim Wise - SES Inc.
  1180.  
  1181.      Page 21                                         (printed 8/12/93)
  1182.